
*****@@@@@@@@@@@@@@@@@@@*****
*****************************
****Instrumentos Valora******
*****************************
*****@@@@@@@@@@@@@@@@@@@*****


clear
set more off

***********************
***Base de diplomado***
***********************

import excel "$basein/Instrumentos valora/Base_diplomado_limpia.xlsx"

**Elimino primeras filas que configuracon los labels

drop in 1/2

**Elimino DA*

drop DA

**Elimino numeros**

foreach x of varlist AB-CY {
	foreach y in 1 2 3 4 5 6{

		replace `x'=strtrim(`x')
		replace `x' = subinstr(`x', "`y'", "",.) 

	}
}

**Creo numericas**

foreach x of varlist BF-CY {
	gen `x'_num=.
	replace `x'_num=1 if `x'=="Nada"
	replace `x'_num=2 if `x'=="Casi nada"
	replace `x'_num=3 if `x'=="Poco"
	replace `x'_num=4 if `x'=="Algo"
	replace `x'_num=5 if `x'=="Mucho"
	replace `x'_num=5 if `x'=="Mucho "
	replace `x'_num=6 if `x'=="Bastante"

}


**********************************
***Base de observación de clase***
**********************************

clear
set more off

import excel "$basein/Instrumentos valora/Base_observacion_limpia.xlsx"

drop CO CP CQ CR CS CT CU CV CW

drop in 1/2

foreach x in AC	AD	AE	AF	AG	AH	AI	AJ	AK	AL	AM	AN	AO	AP	AQ	AR	AS	AT	AU	AV	AW	AX	AY	AZ	BA	BB	BC	BD	BE	BF	BG	BH	BI	BJ	BK	BL	BM	BN	BO	BP	BQ	BR	BS	BT	BU	BV	BW	BX	BY	BZ	CA	CB {

	gen `x'_num=substr(`x',1,1)

	destring `x'_num, replace force

}

***Características de la implementación***

egen Indice_1=rowmean(AC_num-AN_num)
egen Indice_2=rowmean(AO_num-AX_num)
egen Indice_3=rowmean(AY_num-BP_num)
egen Indice_4=rowmean(BQ_num-CB_num)
egen Indice_total=rowmean(Indice_*)

***Uso de los aprendizajes***

foreach x in CD CE CF {
	replace `x'="" if `x'=="5Mucho"
}


multencode CD CE CF , generate(uSO_CD uSO_CE uSO_CF)

***Genero variables con escala de uno a 4***

gen CD_final=.
replace CD_final=0 if uSO_CD==6
replace CD_final=3 if uSO_CD==1
replace CD_final=6 if uSO_CD==7
replace CD_final=12 if uSO_CD==8
replace CD_final=20 if uSO_CD==4

gen CE_final=.
replace CE_final=0 if uSO_CE==6
replace CE_final=3 if uSO_CE==1
replace CD_final=6 if uSO_CE==2
replace CD_final=12 if uSO_CE==3
replace CD_final=20 if uSO_CE==4

gen CF_final=.
replace CF_final=0 if uSO_CF==5
replace CF_final=3 if uSO_CF==1
replace CF_final=6 if uSO_CF==7
replace CF_final=12 if uSO_CF==3
replace CF_final=20 if uSO_CF==4

egen Indice_uso=rowmean(*_final)

tabstat Indice_*, by(L)

rename J cct

g 		obs_participo_40=(AA=="Más de 40 horas")
replace obs_participo_40=. if AA==""
replace obs_participo_40=. if AA=="Normal básica sin licenciatura"


g 		obs_participo_11_39=0
replace obs_participo_11_39=1 if AA=="Entre 11 y 20 horas"
replace obs_participo_11_39=1 if AA=="Entre 21 y 30 horas"
replace obs_participo_11_39=1 if AA=="Entre 31 y 40 horas"
replace obs_participo_11_39=. if AA==""
replace obs_participo_11_39=. if AA=="Normal básica sin licenciatura"

keep cct Indice_* obs_participo*





save "$base_out/Observacion_indices_compliance.dta", replace 								/***Save base***/

**************************
***Base de herramientas***
**************************

clear
set more off


import excel "$basein/Instrumentos valora/Base_herramientas_limpia.xlsx"


**Elimino primeras filas que configuracon los labels

drop in 1/2

foreach x in Y	Z	AA	AB	AC	AD	AE	AF	AG	AH	AI	AJ	AK	AL	AM	AN	AO	AP	AQ	AR	AS	AT	AU	AV	AW	AX	AY	AZ	BA	BB	BC	BD	BE	BF	BG	BH	BI	BJ	BK	BL	BM	BN	BO	BP	BQ  {

	gen `x'_num=substr(`x',1,1)

	destring `x'_num, replace force

}

***Características de la implementación***

egen IndiceH_1=rowmean(Y_num-AF_num)
egen IndiceH_2=rowmean(AG_num-AN_num)
egen IndiceH_3=rowmean(AO_num-AV_num)
egen IndiceH_4=rowmean(AW_num-BB_num)
egen IndiceH_5=rowmean(BC_num-BJ_num)
egen IndiceH_6=rowmean(BK_num-BQ_num)

egen IndiceH_total=rowmean(IndiceH_*)


**Uso de las herramientas**

foreach x in BT BV BX {

	tab `x'
	replace `x'="" if `x'=="4Algo"
	replace `x'="" if `x'=="2Casi nada"

	gen `x'_final=.
	replace `x'_final=0 if `x'=="A ninguno"
	replace `x'_final=5 if `x'=="Menos de 10%"
	replace `x'_final=12.5 if `x'=="Entre 10 y 25%"
	replace `x'_final=38 if `x'=="Entre 26 y 50%"
	replace `x'_final=62.5 if `x'=="Entre 51 y 75%"
	replace `x'_final=88 if `x'=="Entre 76 y 100%"

}

egen IndiceH_uso=rowmean(*_final)

tabstat IndiceH_*, by(L)

rename J cct

g 		sis_participo_40=(W=="Más de 40 horas")
replace sis_participo_40=. if W==""
replace sis_participo_40=. if W=="Normal básica sin licenciatura"


g 		sis_participo_11_39=0
replace sis_participo_11_39=1 if W=="Entre 11 y 20 horas"
replace sis_participo_11_39=1 if W=="Entre 21 y 30 horas"
replace sis_participo_11_39=1 if W=="Entre 31 y 40 horas"
replace sis_participo_11_39=. if W==""
replace sis_participo_11_39=. if W=="Normal básica sin licenciatura"

keep cct IndiceH_* sis_participo*


save "$base_out/Herramientas_indices_compliance.dta", replace

*************************
*************************
***Instrumentos Valora***
*************************
*************************

clear
set more off

use "$base_out/Observacion_indices_compliance.dta"

***Traigo base de herramientas***

merge 1:1 cct using "$base_out/Herramientas_indices_compliance.dta", gen(_herramientas)

***Dejo solo la muestra con observacion en los indicadores de interes***

keep if obs_participo_11_39!=. | obs_participo_40!=. 

merge 1:1 cct using "$basein/Datos adicionales/Tratamientos_completos.dta"

tab _m

keep if _merge==3

rename cct school_id

merge m:1 school_id using "$basein/Datos adicionales/estratos.dta", gen(_estratos)

drop if estrato==13 | estrato==15
keep if _estratos==3 

merge 1:1 school_id using "$basein/Datos adicionales/secundarias.dta", gen(_secundaria)

tab _me

keep if _secundaria==3


******************
***KEEP´ONLY PEC VS PEC PLUS******
******************

drop if state==10
drop if treatgroup2=="Control"
drop if treatgroup2==""

*****************************
***Elimino las secundarias***
*****************************

drop if secondary==1

drop if treatgroup2==""

gen PEC_Plus=0
replace PEC_Plus=1 if treatgroup2=="PEC Plus"

gen PEC=0
replace PEC=1 if treatgroup2=="PEC"

label var PEC_Plus " "
label var PEC" "


**********************************
*****Estandarizo los índices******
**********************************

foreach x in Indice_total Indice_uso IndiceH_total IndiceH_uso {

egen std_`x'=std(`x')

}

replace obs_participo_11_39=1 if obs_participo_40==1
label var obs_participo_40 "All training sessions (40 hours)"
label var obs_participo_11_39 "Some training sessions (10-40 hours)"
*************************************
********BALANCE TABLE ***************
*************************************
eststo clear
eststo:  my_ptest_pec_vs_pecplus obs_participo_40 obs_participo_11_39, by(treatgroup2) clus_id(school_id) strat_id(estrato)
 esttab  using "$tables/ComplianceStallings.tex", label replace  nolines nogaps fragment ///
	 star(* 0.1 ** 0.05 *** 0.01)  ///
	 mlabels(none) nomtitles nonumbers noobs nodep collabels(none)  ///
	 cells("mu_2(fmt(%9.2fc)) mu_3(fmt(%9.2fc) ) dif2(fmt(%9.2fc) star pvalue(d_p2))" "se_2(par) se_3(par) des_2(par)") 
	 
	 
 foreach var in obs_participo_40{
		
		reghdfe `var'  TD1 TD2,  nocons vce(cluster school_id) absorb(i.estrato)
		
		sum `var' if TD1==1 & e(sample)==1
		local tempm=string(r(N), "%9.2gc")
		file open newfile using "$tables/N_`var'_Control.tex", write replace
		file write newfile "`tempm'"
		file close newfile
		sum `var' if TD2==1 & e(sample)==1
		local tempm=string(r(N), "%9.2gc")
		file open newfile using "$tables/N_`var'_PecPlus.tex", write replace
		file write newfile "`tempm'"
		file close newfile
		

		
		reghdfe `var'   TD1 TD2 if treatgroup!="Control" & state!=10,  vce(cluster school_id) absorb(i.estrato)
		sum `var' if (TD1==1 | TD2==1) & e(sample)==1
		local tempm=string(r(N), "%9.2gc")
		file open newfile using "$tables/N_`var'_Dif2.tex", write replace
		file write newfile "`tempm'"
		file close newfile
		
		
}


keep school_id id_escuela obs_participo_11_39 obs_participo_40

save "$base_out/Stallings_Matching.dta", replace